---
title: Migrate to Dedicated
subtitle: Learn what to consider when migrating to a Dedicated cloud router
description: Migrate your self-hosted GraphQL APIs to a federated cloud supergraph with a pre-provisioned router on dedicated infrastructure.
---

<CloudPlanPause />

GraphOS supports [self-hosted and cloud graphs](../../graphs/#graph-types), each recommended for different use cases. You may want to migrate to a cloud graph in these scenarios:

- You have multiple GraphQL APIs you want to compose into a supergraph.
- You have one or more self-hosted GraphQL APIs and want to use GraphOS features beyond graph composition, for example, [`@defer` support](/graphos/routing/operations/defer) or [metrics reporting](/graphos/platform/insights/).
- You have a self-hosted supergraph and want to offload the management of your router service to Apollo while retaining or gaining access to premium router features like [subscription support](/graphos/routing/operations/subscriptions/), [authentication](/router/configuration/authn-jwt), and [more](/router/enterprise-features). Your router service may be either the GraphOS Router or the `@apollo/gateway` package.

GraphOS offers two tiers of cloud routing: Serverless and Dedicated. This guide focuses on considerations when migrating to [Dedicated](/graphos/routing/cloud/dedicated). Refer to [this router comparison](/graphos/routing#router-comparison) to learn about the differences.

<Note>

Dedicated cloud routers currently support all [premium router features](/router/enterprise-features) except for [safelisting with persisted queries](/graphos/routing/security/persisted-queries/), [automatic persisted queries](/apollo-server/performance/apq/), and [offline licenses](/graphos/routing/license/#offline-license). Support for both persisted queries features is on the roadmap.

</Note>

## Migrating from `@apollo/gateway`

Cloud routers use the same [Apollo Router Core binary](https://github.com/apollographql/router) that you can self-host. Therefore, migrating from [`@apollo/gateway`](/apollo-server/using-federation/api/apollo-gateway/) entails migrating to the Apollo Router Core. Refer to the [Gateway migration guide](/graphos/reference/migration/from-gateway) for tips.

## Router customizations

The GraphOS Router supports a [few avenues for customization](/router/customizations/overview):

- Custom router binaries
- Rhai scripting
- External coprocessing

As a managed service, cloud routers don't support running custom binaries. Cloud routers don't currently support Rhai scripts, though support is on the roadmap.
Therefore, you must migrate any customizations to [external coprocessors](/graphos/routing/customization/coprocessor/) or built-in router features to use cloud routing.

Built-in router features that you may have previously supported with customizations include:

- [Authentication](/router/configuration/authn-jwt)
- [Telemetry and monitoring](/router/configuration/telemetry/overview)
- [Traffic shaping](/router/configuration/traffic-shaping)

See the [router configuration documentation](/graphos/routing) for a full list of features.

## Migration

Once your implementation is ready to run on the router, including customizations, you can follow the [Dedicated quickstart](/graphos/routing/cloud/dedicated-quickstart) to get started.

## Pricing considerations

Cloud Dedicated pricing depends on throughput instead of operation volume. Refer to the [Throughput guide](/graphos/routing/cloud/throughput-guide) to learn more.

When you no longer host your router, router-to-subgraph communication may be inter-region, inter-Availablity Zone (AZ), or egress traffic. Be aware of how your new network topology may affect your cloud costs.
